динамическое программирование по подстрокам